package model

import "time"

// User 用户信息表 用于存储C端用户的信息
type User struct {
	ID         uint      `gorm:"primarykey" json:"id"`
	OpenID     string    `gorm:"type:varchar(45);column:openid" json:"openid"`
	Name       string    `gorm:"type:varchar(32)" json:"name"`
	Phone      string    `gorm:"type:varchar(11)" valid:"matches(^1[3-9]{1}\\d)" json:"phone"`                                                                                 //电话
	Sex        string    `gorm:"type:varchar(2)" json:"sex"`                                                                                                                   //性别
	IdNumber   string    `gorm:"type:varchar(18)" valid:"matches(/^[1-9]\\d{5}(?:18|19|20)\\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\\d|30|31)\\d{3}[\\dXx]$/)" json:"idNumber"` //身份证 正则匹配第二代大陆身份证
	Avatar     string    `gorm:"type:varchar(500)" json:"avatar"`
	CreateTime time.Time `json:"createTime"`
	JsCode     string    `gorm:"-" json:"code"`
}

func (*User) TableName() string {
	return "user"
}
